//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
#include "ClusteringTask.h"

#include <stdio.h>
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
#define SIZE_TEXT 1000
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
ClusteringTask::ClusteringTask():initial(0), 
                                 end(0), 
                                 rank(0), 
                                 status(0) {}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
ClusteringTask::ClusteringTask(int initialI, int endI, int rankI, int statusI):initial(initialI), 
                                                                               end(endI), 
                                                                               rank(rankI), 
                                                                               status(statusI) {}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
ClusteringTask::ClusteringTask(const ClusteringTask* clusteringTask):initial(clusteringTask->initial), 
                                                                     end(clusteringTask->end), 
                                                                     rank(clusteringTask->rank), 
                                                                     status(clusteringTask->status) {}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
ClusteringTask::ClusteringTask(const ClusteringTask& clusteringTask):initial(clusteringTask.initial), 
                                                                     end(clusteringTask.end), 
                                                                     rank(clusteringTask.rank), 
                                                                     status(clusteringTask.status) {}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
ClusteringTask::~ClusteringTask() {}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
void ClusteringTask::Initial(int initial) {
  
  this->initial = initial;
  
}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
void ClusteringTask::End(int end) {
  
  this->end = end;
  
}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
void ClusteringTask::Rank(int rank) {
  
  this->rank = rank;
  
}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
void ClusteringTask::Status(int status) {
  
  this->status = status;
  
}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
int ClusteringTask::Initial(void) {
  
  return this->initial;
  
}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
int ClusteringTask::End(void) {
  
  return this->end;
  
}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
int ClusteringTask::Rank(void) {
  
  return this->rank;
  
}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
int ClusteringTask::Status(void) {
  
  return this->status;
  
}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
string ClusteringTask::ToString(void) {
  
  char    buffer[SIZE_TEXT];
  sprintf(buffer, "%d\t%d\t%d\t%d\0", this->initial, this->end, this->rank, this->status);
  return  buffer;
  
}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
ClusteringTask ClusteringTask::operator=(const ClusteringTask& clusteringTask) {
  
  this->initial = clusteringTask.rank;
  this->end     = clusteringTask.status;
  this->rank    = clusteringTask.rank;
  this->status  = clusteringTask.status;
  
  return *this;
  
}
//---------------------------------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------------------------------
